"""
# 函数的多返回值
def test_return():
    return 1,"hello",True   # 返回值类型不受限
x,y,z = test_return()
print(x)
print(y)
print(z)

# 多种传参形式
def user_info(name,age,sex):
    print(f"姓名：{name}，年龄：{age}，性别：{sex}")
# 位置参数
user_info("小李",22,"男")
# 关键字参数
user_info(name='小王',age=21,sex='女')
user_info(sex='女',name='小赵',age=23)     # 可以不按照参数的定义顺序传参
user_info('小张',sex='男',age=22)
# 缺省参数
def user_info(name,age,sex='男'):
    print(f"姓名：{name}，年龄：{age}，性别：{sex}")
user_info('小吴',25)
user_info('小莉',15,'女')
# 不定长-位置不定长，*号  不定长定义的形参会作为元组存在，接收不定长数量的参数传入
def test_info(*args):
    print(f"args参数的类型是：{type(args)}，内容为：{args}")
test_info('小李','男',22)
# 不定长-关键字不定长，**号
def test_info(**kwargs):
    print(f"args参数的类型是：{type(kwargs)}，内容为：{kwargs}")
test_info(name='小李',sex='男',age=22)
"""

# 函数作为参数传递
def test_func(compute):
    result = compute(3,4)
    print(f"compute的类型为：{type(compute)}")
    print(f"result的结果是：{result}")

def compute(x,y):
    return x+y

test_func(compute)